package br.com.toscano.contpedido.otd;

import java.io.Serializable;
import java.math.BigDecimal;

public class ClienteOTD implements Serializable {

	private static final long serialVersionUID = 165L;
	private Long idCliente;
	private String nomeCliente;
	private BigDecimal valorPedidoAnterior = BigDecimal.ZERO; 
	private BigDecimal valorPedido= BigDecimal.ZERO;
	private BigDecimal valorPagamentoAnterior= BigDecimal.ZERO;
	private BigDecimal valorPagamento = BigDecimal.ZERO;

	public Long getIdCliente() {
		return idCliente;
	}
	public void setIdCliente(Long idCliente) {
		this.idCliente = idCliente;
	}
	public String getNomeCliente() {
		return nomeCliente;
	}
	public void setNomeCliente(String nomeCliente) {
		this.nomeCliente = nomeCliente;
	}
	public BigDecimal getValorPedidoAnterior() {
		return valorPedidoAnterior;
	}
	public void setValorPedidoAnterior(BigDecimal valorPedidoAnterior) {
		this.valorPedidoAnterior = valorPedidoAnterior;
	}
	public BigDecimal getValorPedido() {
		return valorPedido;
	}
	public void setValorPedido(BigDecimal valorPedido) {
		this.valorPedido = valorPedido;
	}
	public BigDecimal getValorPagamento() {
		return valorPagamento;
	}
	public void setValorPagamento(BigDecimal valorPagamento) {
		this.valorPagamento = valorPagamento;
	}
	public BigDecimal getValorPagamentoAnterior() {
		return valorPagamentoAnterior;
	}
	public void setValorPagamentoAnterior(BigDecimal valorPagamentoAnterior) {
		this.valorPagamentoAnterior = valorPagamentoAnterior;
	}
	public BigDecimal getSaldoAnterior(){
		BigDecimal valorPedidoAnterior = BigDecimal.ZERO;
		if (this.valorPedidoAnterior != null) {
			valorPedidoAnterior = this.valorPedidoAnterior;
		}
		BigDecimal valorPagamentoAnterior= BigDecimal.ZERO;
		if (this.valorPagamentoAnterior != null) {
			valorPagamentoAnterior = this.valorPagamentoAnterior;
		}
		return valorPagamentoAnterior.subtract(valorPedidoAnterior);
	}
	public BigDecimal getSaldoPeriodo(){
		BigDecimal valorPedido= BigDecimal.ZERO;
		if (this.valorPedido != null) {
			valorPedido = this.valorPedido;
		}
		BigDecimal valorPagamento= BigDecimal.ZERO;
		if (this.valorPagamento != null) {
			valorPagamento = this.valorPagamento;
		}
		return valorPagamento.subtract(valorPedido);
	}
	public BigDecimal getSaldoExtrato(){
		BigDecimal saldoAnterior = this.getSaldoAnterior();
		BigDecimal saldoPeriodo = this.getSaldoPeriodo();
		return saldoAnterior.add(saldoPeriodo);
	}
	public BigDecimal getValorTotalExtrato(){
		BigDecimal valorSaldoAnterior = getSaldoAnterior();
		BigDecimal valorSaldoPeriodo = getSaldoPeriodo();
		return valorSaldoAnterior.add(valorSaldoPeriodo);
	}
 }